/**
 * @date 3:10:35 PM
 * EducationGroupResponse.java
 * Administrator
 * TODO
 */
package com.qs.education.bean.beans;
import java.util.ArrayList;
import java.util.List;

import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.qs.education.bean.api.ResponseBean;
import com.qs.education.bean.entity.EducationClass;
import com.qs.education.bean.entity.EducationGrade;
import com.qs.education.bean.entity.EducationHomeWork;
import com.qs.education.bean.entity.EducationStudent;
import com.qs.education.bean.entity.EducationTeacher;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @class EducationGroupResponse	
 * @author Warren
 * @description
 * @date Nov 7, 2018 
 */
@Data
@EqualsAndHashCode(callSuper=true)
public class EducationGroupResponse extends ResponseBean{
	private Long id;
	private String name;
	private String description;
	private String headImage;
	private String createTime;
	
	@JsonIgnoreProperties(value = { "group","school", "groups","homeWorkList"})
	private List<EducationTeacher> teachers = new ArrayList<EducationTeacher>();
	
	@JsonIgnoreProperties(value = { "school","groups","grade","clazz"})
	private List<EducationStudent> students = new ArrayList<EducationStudent>();
	
	@JsonIgnoreProperties(value = { "group", "groups","homeWorkList"})
	private EducationTeacher teacher;
	
	@JoinColumn(name = "grade_id")
	private EducationGrade grade;
	
	@JoinColumn(name = "class_id")
	private EducationClass clazz;
	
	@JsonIgnoreProperties(value = { "group", "teacher","homeWorkQuestionList"})
	private List<EducationHomeWork> homeWorkList;
}
